package Java03;

	import java.util.Scanner;
	class Person{
	    private String name;
	    private int age;
		private boolean gender;
		private static int idnum;
		private int id=0;
		{	id=idnum++;
			System.out.println("This is initialization block, id is " + Integer.toString(id));	 
		}
		static{
			System.out.println("This is static initialization block");		
		}
		public Person(){
			System.out.println("This is constructor");
			System.out.println(name+","+age+","+gender+","+id);
		}
		public Person(String name,int age,boolean gender){
			this.name=name;
			this.age=age;
			this.gender=gender;	
		}
		public void setname(String name){
			this.name=name;
		}
		public String getname(){
			return name;
		}
		public void setgenger(boolean gender){
			this.gender=gender;
		}
		public Boolean getgender(){
			return gender;
		}
		public void setage(int age){
			this.age=age;
		}
		public int getage(){
			return age;
		}
		public String toString() {
			return String.format("Person [name=%s, age=%d, gender=%s, id=%d]",name,age,gender,id);
		}	
	}
	public class Java0302test {
		public static void main(String[] args) {
			Scanner in=new Scanner(System.in);
		    int n=Integer.parseInt(in.nextLine());
		    Person[] persons=new Person[n];
		    for(int i=0;i<persons.length;i++){
		    	Person person=new Person(in.next(),in.nextInt(),in.nextBoolean());
		    	persons[i]=person;
		    }
			for(int j=persons.length-1;j>=0;j--){
				System.out.println(persons[j].toString());
			}
			Person p=new Person();
			System.out.println(p.toString());
		}
	}
